package com.hkts.naturalgasauthentication.base.service;

import com.hkts.naturalgasauthentication.base.entity.HontRole;
import com.hkts.naturalgasauthentication.base.entity.HontUser;
import com.hkts.naturalgasauthentication.base.entity.HontUserRole;
import com.hkts.naturalgasauthentication.base.vo.UserRolePermissionVo;

import javax.xml.crypto.Data;
import java.util.List;


public interface HontUserService {
    HontUser findHontUserByUserName(String userName);
    HontUser findByMobile(String mobile);
    List<HontUser> customFind(String mobile);
    HontUser cutomerfindByMobile(String mobile);
    HontUser findByUsername(String username);
    HontUser saveUser(HontUser user);
    HontUser updatePassword(HontUser user);
    HontUser updateNickname(HontUser user);
    HontUser updateMobile(HontUser mobile);
    HontUser updateLastTime(HontUser user);
    HontUser updateOpenId(HontUser user);
    HontUser findById(String id);
    //用户列表
    List<HontUser> hontUserList();
    //角色列表
    List<HontRole> hontRoleList();
    //用户角色关联表
    List<HontUserRole> hontUserRoleList();

    /*
    *获取当前用户的角色，权限
    * */
    UserRolePermissionVo getUserRolePermissionVo();


    List<String> getDepartmentIds();
    HontUser findByOpenId(String openid);

    boolean checkUserLoginType(String loginType, String username);
    //登录
    HontUser findHontUserByUserNameOrMobile(String userName);
}
